Nowadays, enormous amounts of data are transferred via networks, mobile phones, Bluetooth devices, bank automatic teller machines, and the like. In order to protect information from undesired accesses, encryption is very often used. In cryptographic, encryption is the process of encoding a message in such a way that third parts cannot read it, only authorized parts can. In an encryption scheme, the message, referred to as plaintext, is encrypted using an encryption algorithm, turning it into an unreadable ciphertext. This is usually done with the use of an encryption key, which specifies how the message is to be encoded. Any adversary that can see the ciphertext, should not be able to determine anything about the original message. An authorized party, however, is able to decode the ciphertext using a decryption algorithm, that usually requires a secret decryption key, that adversaries do not have access to.
Encryption can be applied also to protect stored data, such as files in computers and storage devices.
In cloud computing, distributed computing over a network is performed, usually involving a large number of computers connected over a real time network. The data involve in those computations need to be protected, as it is stored in a network wherein third parts can get easy access.
In “Computing Arbitrary Functions of Encrypted Data” by Craig Gentry, Communications of the ACM, Vol. 53, No 3, Pages 97-105, March 2010, an encryption scheme keeping data private but allowing to perform operations, is disclosed. However, this encrypted scheme is computationally expensive.
Castelluccia C et al.; “Efficient Aggregation Of Encrypted Data In Wireless Sensor Networks”, Mobile and Ubiquitous Systems: Networking and Services, 2005. MOBIQUIT OUS 2005, 17 Jul. 2005, pages 109-117, XP010853989, ISBN: 978-0-7695-2375-0 discloses an additively homomorphic stream cipher.
WO 2006/058561 A1 discloses a cryptography function implemented on a SIM. A random mask is used to mask input data to the cryptographic function to be performed. In particular, the masking function is advantageously a group operation.